package com.yourenbang.lingyun.transaction.mapper;

import com.yourenbang.lingyun.domain.UserBankCard;
import com.yourenbang.lingyun.domain.UserBase;
import com.yourenbang.lingyun.domain.UserBaseExt;
import com.yourenbang.lingyun.transaction.web.domain.vo.fund.AllyTicketBackstageVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface TransactionUserMapper {

    UserBaseExt getUserBaseExtByOtherUserId(@Param("otherUserId") String otherUserId, @Param("platNo") Short platNo);

    UserBase getUserBaseByOtherUserId(@Param("otherUserId") String otherUserId, @Param("platNo") Short platNo);

    List<AllyTicketBackstageVO> getUserBaseId(@Param("userName") String userName, @Param("phone") String phone, @Param("referralCode") String referralCode);

    String getUserBaseByOrderId(@Param("userBaseId")String userBaseId,
                                  @Param("channelId") String channelId, @Param("platNo") Short platNo);

    /**
     * 获取用户借记卡列表
     * @param userBaseId 用户ID
     * @return 借记卡列表
     */
    List<UserBankCard> getUserBankDebitCards(@Param("userBaseId") String userBaseId, @Param("platNo") Short platNo);

    /**
     * 获取一个用户的clientNo
     * @param userBaseId 用户ID
     * @return 如果存在clientNo,说明是下游机构，提现需要特殊处理
     */
    String getUserClientNo(@Param("userBaseId") String userBaseId);
}